#ifndef DECODINGALGORITHM_H_
#define DECODINGALGORITHM_H_

#include <stdio.h>
#include <string.h>
#include <time.h>
#include <limits.h>

#define RES_OK 0
#define RES_ERROR -1
#define CHAR_PADDING '='

extern char base64_to_ascii(char c);
extern int is_little_endian();
extern void invert_block_on_little_endian(char* block);
extern void _decode_block_main(unsigned int* block, unsigned int* decoded_block);
extern void _decode_block_body(char* block, char* decoded_block);
extern int decode_block(char* block, char* decoded_block);
extern ssize_t my_read(int outfd, char* buffer, size_t nbytes);
extern ssize_t my_write(int outfd, char* buffer, size_t nbytes);

#endif /* DECODINGALGORITHM_H_ */
